package matrix;

public class Solution_240 {

    /**
     * 注意：因为三个并列的  if  会让同一次循环里同时执行“下移”和“左移”，
     * 把一次本该互斥的决策拆成两次，导致指针跳错；用  else  保证每轮只走一个方向，算法才正确。
     */
    public boolean searchMatrix(int[][] matrix, int target) {
        int i = 0, j = matrix[0].length - 1;
        while (i < matrix.length && j > 0) {
            if (matrix[i][j] == target)
                return true;
            if (matrix[i][j] < target)
                i++;
            else
                j--;
        }
        return false;
    }
}
